package com.lichuang.fruitvarietysm.goods.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.lichuang.fruitvarietysm.goods.entity.Goods;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lichuang.fruitvarietysm.goods.vo.GoodsCategoryVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 商品表 服务类
 * </p>
 *
 * @author shuaihang
 * @since 2019-05-17
 */
public interface IGoodsService extends IService<Goods> {
    /**
     * 首页，根据二级标题id，随机查询8条数据
     * @param parent_id
     * @return
     */
    List<Goods> goodsList(Integer parent_id);

    //第二个页面，根据条件来筛选商品
    IPage<List<GoodsCategoryVO>> sParentThreeGoods (Page page,
                                                    @Param("attribute_id")String attribute_id,
                                                    @Param("pid")Integer pid,
                                  @Param("parent_id")Integer parent_id,
                                  @Param("category_id") Integer category_id,
                                  @Param("sort") String sort,
                                  @Param("start_price") Integer start_price,
                                  @Param("end_price") String end_price);

    /**
     * 根据商品id查找具体的商品详细信息，
     * 首先先判断商品是否存在sku，
     * 不存在就按以下查找商品的详细信息，id,库存、商品名、商品副标题、商品状态、商品价格、商品周销量、积分、重量
     * @param goods_id
     * @return
     */
    Goods sGoodsDetailsNoSku(@Param("goods_id")Integer goods_id);

    /**
     * 根据商品id查找商品的评价【商品评价总数】
     * @param goods_id
     * @return
     */
    int goodEvaluate(@Param("goods_id")Integer  goods_id);
}
